6  Mixed Effects Models

“Everybody pulls for David, nobody roots for Goliath.” - Wilt Chamberlain

Wilt Chamberlain scores 100 points in a game between the Philadelphia Warriors and the New York Knicks on March 2, 1962. There were only about 4,000 people in attendance and the game was not televised. Chamberlain shot 36-63 from the floor and 28-32 from the free throw line.

In many sports-related data analyses, we encounter scenarios where the outcome is influenced by both fixed effects (predictors that have a constant influence) and random effects (predictors that vary across different levels of a factor, such as players, teams, or seasons). A mixed effects model (MEM) is a statistical model that accounts for both fixed and random effects.

For example, in analyzing basketball performance, fixed effects might include factors such as points scored per game (PPG) and minutes played, while random effects might include differences across players. Mixed effects models allow us to account for this variation, producing more accurate and generalizable results.

6.1 Fixed Effects

Fixed effects are factors that have a consistent influence across the entire dataset. These are the variables that you believe have a direct and constant effect on the outcome you are trying to predict. For example:

  • Points scored per game (PPG) in basketball might be influenced by minutes played. If a player plays more minutes, we might expect their total points to go up. This is a fixed effect because the relationship between minutes played and points scored is assumed to be the same for all players.

6.2 Random Effects

On the other hand, random effects account for the variability that can’t be easily explained by the fixed effects. These are the factors that differ across groups or levels, such as differences between individual players or teams that influence the outcome but aren’t easily predicted or measured by fixed factors. For example:

  • Player differences: Even if two players play the same number of minutes, they may score different numbers of points. These individual differences are captured by the random effects. Each player has their own specific contribution that doesn’t necessarily follow the same rule as the general population of players.

  • Team differences: Similarly, the performance of different teams can vary widely, even if they have similar stats. Random effects capture this variation. For example, some teams might perform better under pressure, while others might have unique strategies that affect game outcomes.

6.3 Mixed Effects

In a Mixed Effects Model, we combine both fixed and random effects to explain the outcome. This allows us to understand the general patterns (fixed effects) and the variations between groups (random effects).

The model equation:

\[ Y = X\beta + Z\gamma + \epsilon \]

In this equation:

  • \(Y\) is the outcome variable you want to predict (e.g., points per game, total rebounds, etc.).

  • \(X\beta\) represents the fixed effects. This part explains the predictable, overall factors that influence the outcome. In sports, this could be things like the average number of minutes a player plays or a player’s age.

  • \(Z\gamma\) represents the random effects. This part captures the differences between the groups or individuals. For example, player-specific differences, like one player being particularly good at making three-pointers, even if they play the same minutes as another player.

  • \(\epsilon\) is the residual error. This accounts for any remaining randomness in the data that the model can’t explain. It captures all the other little things that affect performance but aren’t included in the fixed or random effects.

6.3.1 Why Use a Mixed Effects Model?

A Mixed Effects Model is ideal when the data is hierarchical or clustered in some way, as in sports analytics. For example:

  • Data from different players within the same team.
  • Data from different teams within the same league.
  • Data from different seasons for a player or team.

Using MEMs helps us model the complexity of real-world scenarios where both overall trends (fixed effects) and individual variations (random effects) are important. By including random effects, we avoid oversimplifying the model, which could lead to inaccurate predictions or conclusions.

Imagine you’re trying to predict how many points a basketball player scores in a game. You might think that:

  • The more minutes a player plays, the more points they’ll score (this is a fixed effect).

  • But players differ in their skill levels (this is a random effect). Some players might be consistently better at scoring, regardless of the minutes they play, while others might not perform as well even if they play the same amount of time.

By using a Mixed Effects Model, we can combine these two influences to get a more accurate and personalized prediction of player performance.

6.4 The hoopR library

The hoopR package is used in R for accessing men’s basketball (both NBA and NCAA) data from ESPN and kenpom.com.

Below, we download player stats for every game during the 2022-2023 season.

library(tidyverse)
library(tidymodels)
library(hoopR)

nba_data <- load_nba_player_box(seasons = 2023)

6.5 Fixed Effect Only

Let’s start by doing a simple regression fit where points a player scores is the response and the number of minutes playes is the only predictor variable which is a fixed effect.

6.5.1 Setup Recipe

There are some NAs in the model so we will need to remove these.

rec = recipe(nba_data, points~minutes) |> 
  step_naomit(all_numeric_predictors())

dat = rec |> 
  prep(training = nba_data) |> 
  bake(new_data=NULL)

Scatterplot of data

dat |> ggplot(aes(x = minutes, y = points))+
  geom_point()

6.5.2 Setup model and fit

From the scatterplot, there appears to be an issue of heteroscedasticity. We will ignore that for now and fit a simple linear regression model.

slr_model = linear_reg() |> 
  set_engine("lm") |> 
  set_mode("regression")

slr_fit = slr_model |> fit(points~minutes,
                           data = dat)

glance(slr_fit)
# A tibble: 1 × 12
  r.squared adj.r.squared sigma statistic p.value    df  logLik     AIC     BIC
      <dbl>         <dbl> <dbl>     <dbl>   <dbl> <dbl>   <dbl>   <dbl>   <dbl>
1     0.550         0.550  6.11    33839.       0     1 -89267. 178540. 178564.
# ℹ 3 more variables: deviance <dbl>, df.residual <int>, nobs <int>

We see that the coefficient of determination is 0.5503.

6.6 Including Player as Random Effect

Let’s now take into account the effect of the player. This would be a random effect.

In base R, the lmer library can be used for mixed effects model. We will use this as the engine in tidymodels. Note that the multilevelmod extension package is required to fit this model.

library(multilevelmod)

The formulas for mixed effects models indicate the fixed the effects just as in linear regression. That is, you specify the variable to the right of ~ separated by a +. For the random effects, the formula denotes them as surrounded by parentheses with 1|. In our example, athlete_display_name is the player’s name. So it will be the random effect.

mme_model = linear_reg() %>% 
  set_engine("lmer") 

Note that the only mode available for lmer is regression, thus we will leave the set_mode off.

We also need to update the recipe to include the athlete_display_name variable.

mme_rec = recipe(nba_data, points~minutes+ athlete_display_name) |> 
  step_naomit(all_numeric_predictors())

dat = mme_rec |> 
  prep(training = nba_data) |> 
  bake(new_data=NULL)

To obtain the summary of the fit from tidy or glance, we will need to use the broom.mixed library.

library(broom.mixed)

mme_fit = mme_model |>  
  fit(points ~ minutes + (1|athlete_display_name), data = dat)

tidy(mme_fit)
# A tibble: 4 × 6
  effect   group                term            estimate std.error statistic
  <chr>    <chr>                <chr>              <dbl>     <dbl>     <dbl>
1 fixed    <NA>                 (Intercept)       -0.890   0.173       -5.14
2 fixed    <NA>                 minutes            0.505   0.00422    120.  
3 ran_pars athlete_display_name sd__(Intercept)    3.36   NA           NA   
4 ran_pars Residual             sd__Observation    5.00   NA           NA   
glance(mme_fit)
# A tibble: 1 × 7
   nobs sigma  logLik     AIC     BIC REMLcrit df.residual
  <int> <dbl>   <dbl>   <dbl>   <dbl>    <dbl>       <int>
1 27650  5.00 -84523. 169055. 169088.  169047.       27646

Note the reduction in sigma and AIC from the model without the random effect.

6.7 Interpreting the effects

When interpreting the random effects for player-specific deviations in our example:

Variance of Random Effects (Player): The variance of the random effect for each player tells us how much a player’s performance (points scored) deviates from the overall average. If the variance is large, it means that there is considerable variability between players in how they perform, even after accounting for the number of minutes they play.

Random Intercepts: In the random effect model (1|athlete_display_name), the intercepts represent how much each player’s baseline points scored differs from the average baseline. If a player’s random intercept is large (either positive or negative), it means they consistently score more or fewer points than the average player, regardless of the number of minutes they play.

For our example, the estimate for the random effect due to player is 3.361. So a player’s points deviate the overall mean points by about 3.361 points.

To obtain the random intercepts, we can use the ranef function from the lme4 library.

library(lme4)
random_effects = ranef(mme_fit$fit)

random_effects$athlete_display_name |>
  arrange(desc(`(Intercept)`))
                          (Intercept)
Joel Embiid              14.770608195
Giannis Antetokounmpo    14.746532279
Luka Doncic              14.225193207
Damian Lillard           14.129779570
Shai Gilgeous-Alexander  13.743901367
Stephen Curry            12.282848245
Jayson Tatum             11.358347785
Devin Booker             11.161059212
Kevin Durant             10.886590178
Donovan Mitchell         10.396471074
LeBron James             10.133589639
Ja Morant                10.025873582
Zion Williamson           9.471063669
Trae Young                9.324262551
Kyrie Irving              8.898080255
Lauri Markkanen           8.707361755
De'Aaron Fox              8.614524339
Nikola Jokic              8.595437716
Jaylen Brown              8.208635164
Anthony Davis             8.151224995
Brandon Ingram            7.925790747
Kawhi Leonard             7.687538285
Anthony Edwards           7.378684843
Zach LaVine               7.353595262
Kristaps Porzingis        7.295190830
Jalen Brunson             7.197160725
Julius Randle             6.978375270
Jimmy Butler              6.951298537
Bradley Beal              6.835438591
DeMar DeRozan             6.793837768
Paul George               6.756803293
Keldon Johnson            6.085502458
Pascal Siakam             6.044791474
Bojan Bogdanovic          6.040300613
Desmond Bane              6.021810779
LaMelo Ball               5.983673459
Jalen Green               5.587642616
Jordan Poole              5.206550866
Klay Thompson             5.124254936
Jordan Clarkson           5.062101190
Jamal Murray              4.743847961
Kelly Oubre Jr.           4.606483700
Tyrese Haliburton         4.601299688
Norman Powell             4.596309373
Jaren Jackson Jr.         4.553721768
Darius Garland            4.277972637
Christian Wood            4.257721945
Kyle Kuzma                4.255881066
Karl-Anthony Towns        4.103181328
Anfernee Simons           4.070236572
Terry Rozier              4.002132879
Khris Middleton           3.917519913
Myles Turner              3.843169687
CJ McCollum               3.812115995
Tyrese Maxey              3.727838474
Paolo Banchero            3.656572423
Devin Vassell             3.491761580
Cade Cunningham           3.378425653
Tyler Herro               3.264753721
Jerami Grant              3.249061563
Jrue Holiday              3.237970064
Malik Monk                3.181568091
RJ Barrett                3.181025360
Bennedict Mathurin        3.089863031
Dejounte Murray           2.975281166
Naz Reid                  2.972756620
Collin Sexton             2.967461178
Mikal Bridges             2.964469428
James Harden              2.899791059
Franz Wagner              2.889177300
Cam Thomas                2.871716074
Luka Garza                2.750710863
Bam Adebayo               2.744131028
Deandre Ayton             2.691688843
Bones Hyland              2.617276801
Kevin Porter Jr.          2.589399506
Alec Burks                2.420149385
Jonas Valanciunas         2.353420054
Duane Washington Jr.      2.211978490
Domantas Sabonis          2.204615369
Russell Westbrook         2.160655436
Michael Porter Jr.        2.139281839
Jaden Hardy               2.098772384
Malcolm Brogdon           2.034530159
Gary Trent Jr.            2.026833753
Louis King                1.940776260
Buddy Hield               1.917997549
Kenneth Lofton Jr.        1.866726386
Cameron Johnson           1.723877589
Bobby Portis              1.681140076
D'Angelo Russell          1.668281247
Josh Giddey               1.659123611
Jaylen Nowell             1.643367083
Fred VanVleet             1.616792034
Willy Hernangomez         1.612487506
Nikola Vucevic            1.574179616
Moritz Wagner             1.514943218
Brandon Boston Jr.        1.472108287
Tyler Dorsey              1.463534557
Mac McClung               1.438345869
Jaden Ivey                1.402117148
Lindell Wigginton         1.385614674
Thomas Bryant             1.374741754
Brook Lopez               1.372970313
Talen Horton-Tucker       1.372074999
Andrew Wiggins            1.323975410
Boban Marjanovic          1.284476298
Hamidou Diallo            1.175572207
Wendell Carter Jr.        1.090121617
James Wiseman             1.065956876
Alperen Sengun            1.022644933
Brandon Clarke            0.986319580
John Wall                 0.985048531
Kendrick Nunn             0.984162651
Julian Champagnie         0.983673370
Moses Brown               0.979697288
Immanuel Quickley         0.959631626
Darius Days               0.953844945
Kris Dunn                 0.949955818
JaVale McGee              0.948485326
Jay Huff                  0.945461914
Marvin Bagley III         0.927413808
Edmond Sumner             0.916863260
Tony Bradley              0.914925552
Zach Collins              0.900803196
Terence Davis             0.899607596
Patrick Baldwin           0.882891241
Dalano Banton             0.860467021
Jarrell Brantley          0.860213286
A.J. Lawson               0.828490976
Kevin Huerter             0.819300189
Cole Anthony              0.803205406
Jalen Smith               0.798650546
Bogdan Bogdanovic         0.777340410
Donovan Williams          0.772467703
Doug McDermott            0.722448326
Lester Quinones           0.718478888
Lonnie Walker IV          0.700710753
Isaiah Joe                0.696843323
Jusuf Nurkic              0.686625433
Jaden Springer            0.685527410
Malcolm Hill              0.679735943
Kemba Walker              0.644723466
Nathan Knight             0.615598650
Kira Lewis Jr.            0.586496250
Stanley Umude             0.585203440
Spencer Dinwiddie         0.577108717
Aaron Gordon              0.573799545
Cameron Payne             0.530313054
Dylan Windler             0.501995765
Josh Christopher          0.501593122
Omer Yurtseven            0.473371739
Chimezie Metu             0.458284028
Josh Minott               0.449291757
Scotty Pippen Jr.         0.447223309
Saddiq Bey                0.446959867
Rui Hachimura             0.446363147
Micah Potter              0.428628525
Chris Silva               0.427810241
Jordan Schakel            0.414992628
Andre Drummond            0.411952452
Braxton Key               0.407094166
Jonathan Kuminga          0.392705474
Svi Mykhailiuk            0.392679984
Montrezl Harrell          0.388264400
Malik Beasley             0.387655625
Dewayne Dedmon            0.372867062
Jared Butler              0.355203584
Neemias Queta             0.318729597
Keon Johnson              0.315854290
Obi Toppin                0.315171417
Trevor Keels              0.312192568
AJ Green                  0.289667072
Ron Harper Jr.            0.289425407
JaMychal Green            0.277422718
Keaton Wallace            0.277191039
Dereon Seabron            0.260706196
Dalen Terry               0.240004057
Marko Simonovic           0.230396918
PJ Dozier                 0.210074681
Keon Ellis                0.184890345
Jock Landale              0.181648986
Ryan Rollins              0.164979756
Peyton Watson             0.160446678
Jonathan Isaac            0.160260742
Skylar Mays               0.159242732
Chris Boucher             0.139102528
Mark Williams             0.138635669
Vernon Carey Jr.          0.124085805
Michael Foster Jr.        0.119797840
Jack White                0.118061623
Derrick Rose              0.117795073
Tyrese Martin             0.103419823
P.J. Washington           0.100433347
De'Andre Hunter           0.089162087
Dario Saric               0.081903150
Xavier Moon               0.072741239
Frank Kaminsky            0.072562142
Daniel Theis              0.069879589
Robin Lopez               0.038045074
Sam Merrill               0.018763221
Seth Curry                0.016049536
Payton Pritchard         -0.002962189
AJ Griffin               -0.040517260
Tristan Thompson         -0.041234283
Jakob Poeltl             -0.044276758
Davis Bertans            -0.044769876
Jordan Nwora             -0.050951882
Isaiah Mobley            -0.054538622
Tim Hardaway Jr.         -0.061357507
Chima Moneke             -0.062501717
Justin Champagnie        -0.109529599
Trey Lyles               -0.130179074
Markelle Fultz           -0.132783039
Matt Ryan                -0.136044546
Kevin Knox II            -0.147101041
Patty Mills              -0.164775719
Udonis Haslem            -0.168194659
Furkan Korkmaz           -0.174943218
DaQuan Jeffries          -0.177355516
Richaun Holmes           -0.180970911
Jay Scrubb               -0.210931083
Gabe York                -0.216580908
Carlik Jones             -0.225106223
Greg Brown III           -0.233810016
Trevor Hudgins           -0.237462927
Isaiah Jackson           -0.246782037
RaiQuan Gray             -0.249180532
Day'Ron Sharpe           -0.251281461
Nikola Jovic             -0.251820428
Simone Fontecchio        -0.256201949
Trey Murphy III          -0.271195617
JD Davison               -0.294315817
Dillon Brooks            -0.297224961
Deonte Burton            -0.297374786
Tre Mann                 -0.307663063
T.J. Warren              -0.307692204
Wendell Moore Jr.        -0.314920201
Eugene Omoruyi           -0.329726733
Goran Dragic             -0.335319296
O.G. Anunoby             -0.337328919
Michael Carter-Williams  -0.351639251
Precious Achiuwa         -0.362830108
Gordon Hayward           -0.365122489
Nick Richards            -0.368293995
Jalen Williams           -0.370769347
Garrett Temple           -0.372374297
Quenton Jackson          -0.376660731
David Duke Jr.           -0.378045268
Markieff Morris          -0.410214411
Lindy Waters III         -0.414052801
Keita Bates-Diop         -0.430332438
Jamal Cain               -0.435344615
Bruno Fernando           -0.436717521
Shaedon Sharpe           -0.449346504
Duncan Robinson          -0.456831573
Daniel Gafford           -0.465053821
Mo Bamba                 -0.478962419
Alex Len                 -0.491160820
Terry Taylor             -0.491873083
Mike Muscala             -0.503350177
Saben Lee                -0.505618108
Alondes Williams         -0.509774956
Frank Jackson            -0.509774956
Mamadi Diakite           -0.511080568
Jason Preston            -0.512895219
Thanasis Antetokounmpo   -0.544707252
Cody Zeller              -0.551556286
Justin Jackson           -0.559827151
KJ Martin                -0.593872342
Vince Williams Jr.       -0.594043681
Meyers Leonard           -0.595019893
Xavier Sneed             -0.595760870
Cole Swider              -0.596217904
Paul Reed                -0.604859776
Udoka Azubuike           -0.612285281
Jordan Hall              -0.619993799
Taj Gibson               -0.624942302
Austin Reaves            -0.626146121
Shaquille Harrison       -0.640208617
Jaxson Hayes             -0.649529560
Harrison Barnes          -0.650236302
Kobi Simmons             -0.651967824
Zeke Nnaji               -0.654113233
MarJon Beauchamp         -0.662965059
Luka Samanic             -0.667065819
R.J. Hampton             -0.675050741
Sandro Mamukelashvili    -0.692352020
Cedi Osman               -0.694006657
Isaiah Roby              -0.705758511
Vit Krejci               -0.707708907
Moses Moody              -0.713008140
Kendall Brown            -0.715678247
T.J. McConnell           -0.719438951
Tari Eason               -0.719891468
Goga Bitadze             -0.724892781
Alize Johnson            -0.740997493
Charles Bassey           -0.742205440
Garrison Mathews         -0.750173660
Johnny Juzang            -0.754525056
James Johnson            -0.760159381
Danny Green              -0.762363211
Joe Wieskamp             -0.781892460
Serge Ibaka              -0.783833235
Clint Capela             -0.785647333
Malaki Branham           -0.787282023
Evan Mobley              -0.789125629
Sam Hauser               -0.792153517
Theo Pinson              -0.797454759
Jabari Walker            -0.799032099
Jalen Johnson            -0.841499117
Moussa Diabate           -0.845997060
Chance Comanche          -0.848270343
Johnny Davis             -0.856511175
Nate Williams            -0.864544788
Georges Niang            -0.869997179
Kennedy Chandler         -0.876683449
Trevelin Queen           -0.884744963
Bryn Forbes              -0.889476445
Nickeil Alexander-Walker -0.893164224
Facundo Campazzo         -0.897203538
Luguentz Dort            -0.918374735
Jae'Sean Tate            -0.920660763
Jose Alvarado            -0.922789777
Bol Bol                  -0.933470168
Josh Richardson          -0.937007166
Ziaire Williams          -0.940664989
Derrick White            -0.945750179
Khem Birch               -0.948979860
Matthew Dellavedova      -0.955214048
Tre Jones                -0.957961564
Devonte' Graham          -0.967956392
Luke Kornet              -0.985048041
Gorgui Dieng             -0.989356672
Malachi Flynn            -0.997427288
Leandro Bolmaro          -1.012453486
Admiral Schofield        -1.020554562
Shake Milton             -1.023145413
Kelly Olynyk             -1.025612144
McKinley Wright IV       -1.039631398
Kevin Love               -1.047282671
Davon Reed               -1.052952820
Wenyen Gabriel           -1.057689682
James Bouknight          -1.064041496
Raul Neto                -1.068191543
Chris Duarte             -1.077502015
Jalen Suggs              -1.079657507
Santi Aldama             -1.089290505
Taurean Prince           -1.094428458
Reggie Jackson           -1.105255499
Onyeka Okongwu           -1.107803375
Ish Smith                -1.115341312
Darius Bazley            -1.130148286
Dru Smith                -1.131502652
Anthony Gill             -1.133633823
Derrick Jones Jr.        -1.138583135
Stanley Johnson          -1.144058854
Tobias Harris            -1.172250842
John Collins             -1.179763635
Landry Shamet            -1.194800288
Rudy Gay                 -1.195463540
Rudy Gobert              -1.202762580
Olivier Sarr             -1.213832716
Luke Kennard             -1.227589117
Will Barton              -1.228898160
Jeremy Sochan            -1.229393479
Coby White               -1.240608432
Mason Plumlee            -1.245190015
Eric Gordon              -1.248114033
Robert Covington         -1.269524579
KZ Okpala                -1.281549895
Danuel House Jr.         -1.296285897
Tyus Jones               -1.305331236
Trendon Watford          -1.319944603
Aleksej Pokusevski       -1.326859152
Scottie Barnes           -1.344859377
Ty Jerome                -1.353204283
DeAndre Jordan           -1.360105598
Damion Lee               -1.368163006
Xavier Cooks             -1.374444571
Oshae Brissett           -1.391908217
TyTy Washington Jr.      -1.392907088
Terrence Ross            -1.413782137
Kessler Edwards          -1.419714554
Jarrett Culver           -1.421179816
Damian Jones             -1.436953767
Ousmane Dieng            -1.440703430
Miles McBride            -1.450972476
Sterling Brown           -1.461104565
Evan Fournier            -1.470740327
Mfiondu Kabengele        -1.471611240
Vlatko Cancar            -1.473325343
Javonte Green            -1.480271883
Ochai Agbaji             -1.495742071
Walker Kessler           -1.507385255
Jordan Goodwin           -1.507923485
Josh Okogie              -1.517628504
David Roddy              -1.529515244
Yuta Watanabe            -1.536568107
Victor Oladipo           -1.538552809
Rodney McGruder          -1.545090624
Aaron Nesmith            -1.554515073
Nassir Little            -1.561184797
Nic Claxton              -1.596602205
Aaron Wiggins            -1.603067603
Noah Vonleh              -1.624532481
Bruce Brown              -1.666047371
Kai Jones                -1.670765620
Kevon Harris             -1.677134220
Chris Paul               -1.713622151
Buddy Boeheim            -1.727368027
Jae Crowder              -1.734263532
Naji Marshall            -1.744616761
Jeff Dowtin Jr.          -1.751289231
Max Christie             -1.751974789
Jeff Green               -1.785723671
Bismack Biyombo          -1.800850130
Cam Reddish              -1.818641418
Jalen McDaniels          -1.824705607
Jeremiah Robinson-Earl   -1.839634330
Amir Coffey              -1.879634621
Blake Griffin            -1.882796621
Jarrett Allen            -1.883688600
Gary Payton II           -1.885161999
Aaron Holiday            -1.897760849
Joe Harris               -1.921124575
Jabari Smith Jr.         -1.945571349
Jake LaRavia             -1.950775629
Terance Mann             -1.959760725
Ryan Arcidiacono         -1.964670599
Isaiah Stewart           -1.966567632
Anthony Lamb             -1.981695917
Isaiah Todd              -2.008310652
Thaddeus Young           -2.023713485
Keegan Murray            -2.024031027
Marcus Morris Sr.        -2.033437131
Romeo Langford           -2.042067611
Dwight Powell            -2.087651939
Theo Maledon             -2.109395130
Caris LeVert             -2.127194277
Xavier Tillman           -2.142318456
Orlando Robinson         -2.159571563
Cory Joseph              -2.164644508
Jamaree Bouyea           -2.209023444
Christian Braun          -2.213643506
Devon Dotson             -2.246578748
Otto Porter Jr.          -2.269862223
Corey Kispert            -2.276931777
Justin Holiday           -2.289655794
Dennis Schroder          -2.292695816
JT Thor                  -2.314707436
Bryce McGowens           -2.319873216
Ish Wainright            -2.335826136
Max Strus                -2.340004230
Dominick Barlow          -2.359869512
Ricky Rubio              -2.371402951
Jevon Carter             -2.378613693
John Butler Jr.          -2.394947395
Jaden McDaniels          -2.448284245
Grayson Allen            -2.461618611
Gabe Vincent             -2.462725499
Kenrich Williams         -2.479119881
Jalen Duren              -2.513441164
Davion Mitchell          -2.518603643
Nerlens Noel             -2.520806260
Usman Garuba             -2.564504938
Joshua Primo             -2.567996063
Monte Morris             -2.570006634
Robert Williams III      -2.574697571
Jaylin Williams          -2.575013149
Mike Conley              -2.619853765
Jared Rhoden             -2.628704566
Drew Eubanks             -2.645163828
Frank Ntilikina          -2.671754026
Trent Forrest            -2.678681004
Ivica Zubac              -2.720860333
Lamar Stevens            -2.759230789
Juan Toscano-Anderson    -2.804097468
Haywood Highsmith        -2.850781608
Christian Koloko         -2.852172941
Josh Green               -2.860499203
Donte DiVincenzo         -2.877039353
Cody Martin              -2.931521463
Larry Nance Jr.          -2.978095897
Killian Hayes            -3.011949596
Pat Connaughton          -3.019989927
Blake Wesley             -3.078127292
George Hill              -3.082033087
De'Anthony Melton        -3.118965890
Daishen Nix              -3.136862690
Marcus Smart             -3.139662048
Jordan McLaughlin        -3.171223798
Jarred Vanderbilt        -3.190569728
Gary Harris              -3.191079813
Dennis Smith Jr.         -3.210944645
Patrick Williams         -3.214158290
Andre Iguodala           -3.231060746
Caleb Houstan            -3.242241461
Joe Ingles               -3.255540178
Deni Avdija              -3.283921271
Quentin Grimes           -3.370925952
Isaac Okoro              -3.374684656
Matisse Thybulle         -3.405413092
Jericho Sims             -3.414738623
Kyle Lowry               -3.430621966
Juancho Hernangomez      -3.437217252
Wesley Matthews          -3.479888280
Andrew Nembhard          -3.542603282
Caleb Martin             -3.579747833
Ayo Dosunmu              -3.682016386
Torrey Craig             -3.698121026
Chuma Okeke              -3.758240023
Grant Williams           -3.808111492
Austin Rivers            -3.821126366
Kyle Anderson            -3.918518118
Justin Minaya            -3.932089672
Delon Wright             -3.938891063
Steven Adams             -3.941876070
Isaiah Livers            -3.942590071
Nicolas Batum            -3.947977362
Dyson Daniels            -4.021107379
Troy Brown Jr.           -4.029190606
Herbert Jones            -4.088266328
Kevon Looney             -4.205973223
Dean Wade                -4.282257049
Kentavious Caldwell-Pope -4.318796623
John Konchar             -4.328228736
Isaiah Hartenstein       -4.340747074
Ben Simmons              -5.193643725
Alex Caruso              -5.236508271
Jacob Gilyard            -5.241731921
Mitchell Robinson        -5.344832576
Al Horford               -5.409273302
Justise Winslow          -5.427360771
Josh Hart                -5.445935426
Maxi Kleber              -5.537235340
Dorian Finney-Smith      -5.915330981
Draymond Green           -6.218707666
Royce O'Neale            -6.264722028
Patrick Beverley         -6.411404121
Reggie Bullock Jr.       -7.061929292
P.J. Tucker              -8.167503344